Dynamic Programming and Optimal Control
Dynamic Programming and Optimal Control is offered within DMAVT and attracts in excess of 300 students per year from a wide variety of disciplines. It is an integral part of the Robotics, System and Control (RSC) Master Program and almost everyone taking this Master takes this class. The course focuses on optimal path planning and solving optimal control problems for dynamic systems. It is an innovative and highly effective class combining probability theory, calculus and linear algebra to solve real world problems. The teaching is sustainable, given that the knowledge gained is highly transferable and general. The students are encouraged to think and use their acquired knowledge of algorithms in practical and highly applicable programming exercises.
Keywords
Course description
Project description
The Dynamic Programming and Optimal Control class focuses on optimal path planning and solving optimal control problems for dynamic systems. It stands out for several reasons:
It is multidisciplinary, as shown by the diversity of students who attend it. It is very popular and attracts a large number of students – in excess of 300 – from fields as diverse as finance, biology and engineering. Students enjoy it and find it highly relevant.
It is both innovative, highly effective and unique. It combines probability theory, calculus and linear algebra to solve real world problems. This also poses a challenge for teaching as many different mathematical concepts are used. The students immediately apply all algorithms studied in pre-defined programming exercises. These develop real world skills and are perceived as both fun and didactical. The teaching uses examples of how the algorithms are used based on the personal experience of Professor D’Andrea – using Amazon Robotics (formerly KIVA Systems) as a significant example.
The teaching is sustainable, given that the knowledge gained is highly transferable and general. The course focuses on fundamental concepts that can be applied in path planning, trajectory planning, and reinforcement learning etc. for both continuous and discrete time systems.
The class notes provided are rigorous and clear and are appreciated by the students. Some of the concepts covered are hard/impossible to find in the literature, e.g. rigorous but accessible proof of the Dynamic Programming Algorithm. Student feedback is extremely positive in this regard.
Many students from RSC use the material from this class for their Semester projects and Master Theses. They would be unable to do their projects and theses without the material from this class.
The lead TA for this class is an experienced PhD student. He is supported by strong Master students who have performed excellently in this class in the past. They place importance on promptly answering students’ questions, being available to help students, updating the lecture notes etc.
Student feedback indicates that the exam is fun, with interesting questions that make the students think as opposed to memorizing formulae and plugging numbers in. All past exams are also uploaded and available to students for their preparation. Additionally, problem sets contain both theoretical questions and programming questions to make sure students get practice on both fronts.